Building Cases

You can also add Cases to any existing Object that is based on a user defined Base Class that has been set-up to allow the hasCases Object Control Property set to true. When the hasCases property is changed (False to True) the Object's icon will change to denote that the object now uses a Cases to determine its value. This task is best performed using the 'Convert to Cases' Wizard of an Object.

The Cases Tab provides a full editor for creating and maintaining Cases

Adding Attributes (Columns) to Cases

You can drag and drop existing Attributes from the Knowledge Explorer window into the Case editor. To create a new attribute, press the + (plus) icon at the top right of the case editor.

Adding a new Case line

You can press the + (plus) icon at the bottom left of the case editor, or press the INSert key on your keyboard, or select an existing case line (by clicking on the line number at the left side) and use the right-mouse click menu.

Generate Truth Table

Using the Truth table tool you can generate a full set of Cases to cover every possible combination of the Attributes and values in the set. A default decision will be requested and then the exhaustive set of case lines will be generated. You could then proceed down each Case to assign the correct decision to last column for each Case.

Using 'OR' logic

When using List type Attributes, you can right-mouse click on a value and choose Edit OR values to have more than one value included. i.e. to express IF Attribute = value OR value OR value THEN...

The asterisk * symbol is used to imply "any value". This expresses the logic of "regardless of the value of this attribute".

Cases provide a way of expressing knowledge by entering previous examples of decision making in the form of a table. Each line in the table represents a case (i.e. one instance or one example) of which attribute value combinations give rise to which outcome. As in this illustration of when to Pass or Reject claims for an employee's travel expenses, depending upon the employee's job status and the quality of hotel that they stayed in.

A Case can also be considered as a Rule. In the above example the highlighted case is expressing logic in the following form:

IF Senior_Manager = Accounts AND Hotel = B THEN Pass

The asterisk * symbol is used as a global list attribute value, to imply the special meaning of "Don't Care". "Don't Care" indicates that you wish to express the logic as "regardless of the value of this attribute". Therefore, the first case line rule is:

IF Grade = Director THEN Pass

The set of Cases can be used as rules like this by the 'inference' process (i.e. the run time). Alternatively, you can convert the Case set to a decision tree by using Rule induction.

The cases can be sorted by selecting a column heading and using the right mouse-click menu. Note that each case line will remain intact when a column is sorted, i.e. the columns are not sorted in isolation.

Importing Cases from an external Database table

Cross-Referencing Cases & Decision Trees